package com.pureut.storage.service;


import com.baomidou.mybatisplus.extension.service.IService;
import com.pureut.storage.domain.BarCodePrint;
import com.pureut.storage.dto.BarCodePrintingDto;
import com.pureut.storage.dto.PrintDto;
import com.pureut.storage.vo.BarCodePrintVo;
import com.pureut.storage.vo.PrintVo;
import com.sale.common.mybatis.core.page.PageQuery;
import com.sale.common.mybatis.core.page.TableDataInfo;

/**
 * 条码打印服务层
 * @author: CM
 * @date: 2023/4/4    14:29
 */
public interface BarCodePrintingService extends IService<BarCodePrint> {

    /**
     * 条码打印列表
     * @param barCodePrintVo
     * @return
     */
    TableDataInfo<BarCodePrintingDto> getList(BarCodePrintVo barCodePrintVo, PageQuery pageQuery) throws Exception;

    /**
     * 根据物料号码获取条码打印信息
     * @param materialNumber
     * @param type
     * @return
     */
    PrintDto getMaterialNumber(String materialNumber,String type);

    /**
     * 打印
     * @param printVo
     * @return
     */
    PrintVo print(PrintVo printVo) throws Exception;

    /**
     * 查询条码打印页面进行条码添加操作数据信息
     *
     * @param materialNumber
     * @param type
     * @return
     */
    BarCodePrintingDto getMaterialNumberByType(String materialNumber, String type);
}
